From 1ceec08ea268db3e303b8d3eb766a6b251c72054 Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Thu, 28 Aug 2008 09:59:49 +0100 Subject: [PATCH] hvmloader: skip upper field of 64 bit base address register. Signed-off-by: Yuji Shimada --- tools/firmware/hvmloader/hvmloader.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tools/firmware/hvmloader/hvmloader.c b/tools/firmware/hvmloader/hvmloader.c index d12dc916b9..9b578d89e7 100644 --- a/tools/firmware/hvmloader/hvmloader.c +++ b/tools/firmware/hvmloader/hvmloader.c @@ -243,6 +243,13 @@ static void pci_setup(void) bars[i].bar_sz = bar_sz; nr_bars++; + + /* Skip the upper-half of the address for a 64-bit BAR. */ + if ( (bar_data & (PCI_BASE_ADDRESS_SPACE | + PCI_BASE_ADDRESS_MEM_TYPE_MASK)) == + (PCI_BASE_ADDRESS_SPACE_MEMORY | + PCI_BASE_ADDRESS_MEM_TYPE_64) ) + bar++; } /* Map the interrupt. */ -- 2.30.2